Shippable network-attached data storage device with updateable electronic display

ABSTRACT

A network-attachable data transfer device housed within a shippable enclosure that incorporates an updateable electronic display for displaying shipping destination information is disclosed. The device may be initialized (e.g., prepared to receive data, and the updateable electronic shipping display set to the shipping destination) by a service provider and shipped, in accordance with the displayed destination address, as a self-contained shipping unit. The device may be installed onto a network at the destination and loaded with data. The display may also be updated with the next destination address such that the device is shipped to the updated destination address (e.g., back to the service provider, or onto other destinations before being send back to the service provider). When the device is received back at the service provider, the data is transferred from the device to a service provider storage facility, wiped of data, and prepared to be sent out again.

This application is a continuation of U.S. patent application Ser. No.14/788,671, filed Jun. 30, 2015, which is hereby incorporated byreference herein in its entirety.

BACKGROUND

Growth of data storage capacity and big data has far outpaced the rateof increase of data transmission bandwidth capable of transferring bigdata. The discrepancy is so great that transmitting big data from onestorage facility to another storage facility can be prohibitively costly(e.g., requiring costly system upgrades) or lengthy (e.g., transmissiontaking months to years). Physically moving the storage media may leavethe data on legacy hardware or may not be an available option (e.g.,when the data was stored by a storage service on behalf of thecustomer). Some solutions have involved transferring the data to aportable storage device (e.g., network attached storage devices) andshipping the portable storage device to another storage facility wherethe data is transferred to another storage system.

However, when it comes to shipping, placing items into containers andlabels onto the containers offers numerous opportunities for humanmistakes that may prevent the correct item from being shipped to thecorrect destination. For example, the wrong item may be placed in a boxor the wrong label may be placed on the box, causing a customer toreceive the wrong item.

In particular, when an order is placed for an item, the item is fetchedand a box for shipping the item selected. Sometimes items are boxed inan area with other items and human or other error may cause an item tobe placed into a box that was not intended for the item. In anotherexample, labels for shipping container may be printed and placed ontothe containers. Again, human or other error may cause a label to beprinted incorrectly or placed on a box that was not intended for thelabel. Furthermore, disposable shipping containers, such as cardboardshipping containers may not be the best use of resources as they areoften only used once or a few times before being disposed.

Further, some such errors may happen either at a place of business thatis fulfilling the order or at a customer site, for example, a customersite that is returning the item to the place of business where it wasordered.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a system and process for a shippable data storagedevice with network-updateable electronic ink shipping display,according to some embodiments.

FIG. 2 illustrates a shippable data storage device with anetwork-updateable electronic ink shipping display, according to someembodiments.

FIG. 3 is a schematic view of a shippable data storage device with anetwork-updateable electronic ink shipping display, according to someembodiments.

FIG. 4 is a flow diagram of a process of using a shippable data storagedevice with network-updateable electronic ink shipping display,according to some embodiments.

FIG. 5 is a flow diagram of a provisioning process associated with ashippable data storage device with network-updateable electronic inkshipping display, according to some embodiments.

FIG. 6 is a flow diagram of a client side process associated with ashippable data storage device with network-updateable electronic inkshipping display at a customer location, according to some embodiments.

FIG. 7 is a flow diagram of a service provider data ingestion processassociated with a shippable data storage device with network-updateableelectronic ink shipping display, according to some embodiments.

FIG. 8 illustrates a shippable tote/shipping container a withnetwork-updateable electronic ink shipping display, according to someembodiments.

FIGS. 9A-9D illustrate various types of information displayed via anupdateable electronic display, according to some embodiments.

FIG. 10 is a block diagram illustrating an example computer system thatimplements some or all of the techniques described herein, according todifferent embodiments.

While embodiments are described herein by way of example for severalembodiments and illustrative drawings, those skilled in the art willrecognize that embodiments are not limited to the embodiments ordrawings described. It should be understood, that the drawings anddetailed description thereto are not intended to limit embodiments tothe particular form disclosed, but on the contrary, the intention is tocover all modifications, equivalents and alternatives falling within thespirit and scope as defined by the appended claims. The headings usedherein are for organizational purposes only and are not meant to be usedto limit the scope of the description or the claims. As used throughoutthis application, the word “may” is used in a permissive sense (i.e.,meaning having the potential to), rather than the mandatory sense (i.e.,meaning must). Similarly, the words “include,” “including,” and“includes” mean including, but not limited to.

DETAILED DESCRIPTION OF EMBODIMENTS

Various embodiments describe systems and processes associated with ashippable data storage device that includes an electronic shippingdisplay that is used to display the destination shipping address of theshippable data storage device.

In some instances, the self-contained device may include an enclosuresuitable for shipping the storage device so that no additional packagingis necessary. For example, the enclosure may include an updateableelectronic display that displays shipping information such that acarrier can scan or read the shipping information from the display anddeliver the device to a destination based on the displayed shippinginformation. The device may be used for moving large amounts of datafrom one large data storage facility to another large data storagefacility, in embodiments. The device may be used for moving data fromone storage facility to another storage facility when data transmissionnetworks cannot move the data fast enough. For instance, a petabyte ofdata can take years to transmit over some network connections, whereastransfer of the data from a storage facility to the device may take daysor less and physical shipment of the shippable storage device can be asfast as overnight. The device may also be used for moving data from onestorage facility to another facility when a highly secure means oftransfer is required.

In embodiments, import or export may be in reference to a serviceprovider that owns or controls the devices or stores the data on behalfof a customer. For example, moving data from a customer to a storageservice provider via shippable data storage device may be referred to asan import and moving data from a storage service provider to a customervia shippable data storage device may be referred to as an export. Insome embodiments, data may be multicast, for example, sent from acustomer to a storage service provider where the data is uploaded to astorage service and then the device is further shipped onto thecustomer's customers (e.g., via the device continuing on from thestorage service provider, with the data, after data is uploaded at thestorage service provider). A multi-cast scenario may apply in the exportembodiment, as well. A multi-cast embodiment may refer to a singledevice being loaded with data at a source and then sent to multipledifferent destinations to distribute copies at the multiple differentdestinations or may refer to multiple different shippable data storagedevices being loaded with the same copy of data and each device beingsent to a different destination. In some multicast embodiments, multipledifferent devices, each device for transferring a portion of a largeamount of data may be shipped as a group to a first destination and thenonto another destination, leaving copies of the large amount of data ateach destination (e.g., seeding different office's) before beingreturned to the service provider. A customer may request for export ofdata from the service provider storage network to multiple locations orcustomers, for instance.

For example, some large data storage facilities store large amounts ofdata, but have no way to transfer the large amounts of data external tothe facility. In some instances, an enterprise storage facility may havegrown over time with the data being used exclusively within thenenterprise such that external data transmission facilities sufficient toreasonably move large amounts of data were never realized. Moving suchlarge amounts of data to a cloud-based storage solution cost-effectivelyand in a timely manner may be difficult or even impossible.

In a particular example, moving big data (e.g., terabytes or petabytesof data or the like) from one storage facility to another may takemonths or years to transmit with current bandwidth solutions. Analternative is to locally transfer the data to multiple data transferdevices over a number of days or weeks at the one storage system andthen ship the multiple transfer devices to the other storage system andlocally transfer the data from the multiple transfer devices to thedestination storage system.

The device may be equipped with an electronic display as part of orincorporated into the enclosure of the device. In embodiments, thedisplay may be a low-power display such as an electronic ink display andthe display maybe updated with any of various information, includingdestination addresses of where the device is being shipped. The devicemay be equipped with various sensors, such as GPS sensor for trackingshipping progress of the device or environmental sensors such asaccelerometers, temperature sensors, humidity sensors, pressure sensors,or the like. Data associated with the sensors may be displayed by thedisplay, in embodiments. The device may be ruggedized such that thedevice is less likely to be damages during transit, in embodiments.

In embodiments, the shippable device is configured such that aruggedized enclosure, surrounding persistent storage and incorporatingan electronic display act as a self-contained whole. Such an arrangementmay reduce shipping errors. For example, because the persistent storage,the display and the enclosure are coupled as a self-contained whole, itmay not be possible to mismatch persistent storage intended for onecontainer in a different contained. Similarly, it may not be possible tomis-label the shippable unit (e.g., by putting the wrong label on thedevice) because the display is built into the shippable whole. Thus,errors associated with mismatched labels, containers and items may bereduced by such a shippable storage device.

Various processes may be instituted by a service provider or customerthat uses the device, such as processes to keep the data secure, forexample. For instance, a service provider, such as a storage serviceprovider with a number of devices, may implement a provisioning processthat ties a particular device to a particular request for data transferservices. The service provider may install security information on thedevice and direct the display of the device to display a shippingdestination associated with the request and provide the device to acarrier as a self-contained shipping container, in embodiments.

In another process, such as when the customer that requested the servicereceives the device, the customer may connect the device to a customernetwork and download a proprietary application corresponding to thedevice. When the application is executed by a customer computer on thecustomer network, the application may discover the connected device onthe network and validate the data transfer device. In some embodiments,the application may be used to identify data on the customer networkthat is to be transferred to the device and the application may encryptthe identified customer data and load the encrypted data onto thedevice.

In some embodiments, the destination information for the device may beupdated. For example, updated address information may be obtained overthe customer network or from memory of the device and displayed on theelectronic display. In some embodiments, the device may realize (e.g.,based on a GPS sensor) that it is located at the customer location andchange the displayed address information from the customer site to thenext destination. The customer may then provide the device to a carrieras a self-contained shipping container for shipment without any otheradditional packaging or labeling.

In another process, when the device is received back at the serviceprovider (in accordance with an address or a coded indicating an addressdisplayed by the display), for example, an ingestion process may beperformed. For instance, the data transfer device may be connected to aservice provider network, the data on the device decrypted and stored toa storage service of the service provider, and the data transfer deviceprepared for re-use.

In some embodiments, the electronic display may be configured to turn onor off according to logic. For instance, in order to hide the locationof the service provider storage network, the device may be configured tonot display the destination address of the service provider until thedevice has left the customer facility (e.g., and is received by acarrier). Program logic may rely upon GPS or cellular data to determinethe device location and adjust the display accordingly.

In some embodiments, the entire device may be configured to act as theuser interface for the device. For example, the device may be configuredto respond to shaking of the device by waking up the display from asleep mode where the display is blank. Shaking of the device may causethe display to display the destination address or a message, inembodiments.

The device may be configured with a keypad (e.g., a physical keypad or avirtual keypad via the display) or may be configured to respond orprovide audible commands, instructions or messages.

FIG. 1 illustrates a system and process for a shippable data storagedevice with network-updateable electronic ink shipping display,according to some embodiments. The illustrated embodiment depictsmovement of a shippable data storage device from a service providerlocation 120 to an enterprise location x 110 and back to the serviceprovider location 120 as well as various processes A-G that areperformed along the way by various entities. The device 130 depicted inFIG. 1 may be the same as the device 130 depicted in FIGS. 2, 3, 8 and9A-9D, in embodiments.

Enterprise location x 110 is depicted in FIG. 1 . But in someembodiments, the enterprise may have other locations and the shippabledata storage device 130 may be shipped to those locations instead of, inaddition to, before, or after the depicted shipment B. In someembodiments, multiple different devices may be shipped to variouslocations at the same time as the depicted shipment. Shippable datastorage devices may be shipped to entities other than enterprises, forexample but not limited to, customers, government entities, otherservice providers or the like. Computers, such as a server or desktopcomputers at the enterprise location x 110 may perform some or all ofthe processes illustrated in FIGS. 4 and 6 , in embodiments. Computers,such as a server or desktop computers at the service provider location120 may perform some or all of the processes illustrated in FIGS. 5 and7 , in embodiments.

In the depicted embodiment, (A) a customer creates, generates orrequests that a job be performed. The job creation or request may beperformed via a console such as a network-based page or site of theservice provider that the enterprise accesses via one or more networks(e.g., network 108). At (B) the service provider provisions a particularshippable data storage device 130, instructs the device to display anaddress associated with enterprise location x 110 (e.g., obtained duringjob creation (A)) and ships the device to the requesting customeraccording to job information (e.g., job information may be determinedduring generation of the job at request time, in some embodiments). At(C), the device is received at the enterprise location X 110 andcustomer data is transferred to the device at the customer site. At (D)the electronic display is updated with a new destination for the device.For example, the service provider may send an updated address vianetwork 108, or the device may recognize it is at the enterpriselocation and automatically update the displayed destination address froma memory store programmed with the next destination during theprovisioning step (B), in embodiments. At (E) the device is provided, bythe enterprise or customer to a shipping carrier and the device isshipped back to the provider. In some embodiments, the device may besent to one or more other customer sites for additional data beforebeing sent back to the service provider. At (F) the device is receivedback at the service provider, connected to a service provider network,and customer data is ingested from the device into the service providersystem. At (G) the device is wiped and is stored until it is provisionedfor another job.

Other various use-cases are contemplated, a device may be shipped ontoother entities, such as a customer's customers after it has beenreceived by, and the data uploaded at, a storage service provider, forexample. In some embodiments, the device may be sent onto othercustomers distinct from the customer that sent the device to the storageservice provider. The device may be used to distribute the same data tomultiple different sites of the same customer, in embodiments. Thedevice may be instructed to display various addresses at various times,such that the device is used to multi-cast data, for example in eitherthe export or import embodiments. It is contemplated that the variousaddresses may be stored on the device at once, such as when the deviceis provisioned, for example, or the various addresses may be sent to thedevice over a network, such as a cellular network or via a customer orprovider network or combination thereof. In embodiments, the device mayinclude logic configured to update the displayed address based on thedevice sensing a geographical position or location of the device. Forinstance, a device that determines (e.g., based on a GPS sensor orcellular triangulation) that it has arrived at one location, may beconfigured to display the next address stored in memory of the device.

FIG. 2 illustrates a shippable data storage device with anetwork-updateable electronic ink shipping display, according to someembodiments. The depicted shippable storage device 130 may be used tomove large amounts of customer data off of customer storage networks orservers to other storage networks or servers, when other forms oftransfer (e.g., broadband data transmission) are unavailable or cost ortime prohibitive, for example. Embodiments of the shippable storagedevice may include more, less, or different features or components thanthose depicted, in embodiments.

In the depicted embodiment, shippable data storage device 130 includesan enclosure 215 surrounding persistent storage 290. The persistentstorage may include any type of storage such as, but not limited to harddisk drives, optical media, magnetic tapes, memristor storage,persistent RAM or solid state storage devices. The enclosure may beruggedized (e.g., according to various standards, such as militarystandards or electronics industry standards) and may be configured withan outward-facing electronic display 214 such that when enclosed by theenclosure, the persistent storage, the enclosure, and the electronicdisplay form a self-contained shipping container suitable for shippingwithout any additional packaging, labeling or the like and such that theelectronic display 214 acts as to display a destination location (e.g.,in lieu of a shipping label). In embodiments, the enclosure 215 and thedisplay 214 act as reusable shipping components in lieu of cardboardboxes and shipping labels. The enclosure may include various mechanismsto facilitate movement of the device 130, such as rollers, handles orthe like.

Device 130 is illustrated with battery 260 and power connection 250 forpowering some or all of the components of the shippable device thatrequire power to function. The power connection 250 may be configured toconnect the shippable device to an external power source, inembodiments. The power connector may power the persistent storage, insome embodiments. Other sources of power are contemplated, such askinetic energy sources that rely upon the motion during shipping topower the shippable storage device, solar energy sources, or the like.Any of various power sources may power the electronics (e.g., thedisplay or the storage) of the shippable storage device 130.

Device 130 is depicted with display 214. The display may incorporate anyof various display technologies, such as low-power electronic-ink(E-ink), organic light emitting diodes (OLED), active-matrix organiclight-emitting diode (AMOLED), flexible displays or touch-sensitivedisplays as non-limiting examples. Low-power e-ink displays may providethe benefit of reduced power consumption for a shipping environmentwhere small batteries (e.g., batteries that cost less to ship, are lessexpensive or take up less shipping space) are preferred. The device 130may be configured with multiple displays 214, in some embodiments. Forexample, some carriers or fulfillment centers label three sides of ashipping container such that the destination of the container can bescanned or read irrespective of the orientation of the container.Similarly, multiple displays can be incorporated into multiple sides ofthe enclosure 215 of the device. For example, the enclosure may beconfigured with 1-6 or more displays, in some embodiments. The variousdisplays maybe configured such that the displays are computer readable(e.g., via scanner).

Device 130 is illustrated with network interface 240. The networkinterface 240 may act as interface between the shippable storage device130 and various networks, such as LANS, WANS or the like (e.g., viavarious protocols, such as iSCSI or Ethernet). In some embodiments,network connection 240 may act as an interface directly to anotherdevice (e.g., via SCSI).

Device 130 is illustrated with switch 230. The switch 230 may act as anon-off power switch or as a switch to activate the display, in someembodiments. Device 130 is also illustrated with antenna 220. Theantenna may be configured to facilitate wireless communication betweenthe service provider or customer and the device. For example, thewireless communication may be over various cellular networks, Wi-Fi, orthe like (e.g., network 108). For instance, the service provider maysend updated address information to the shippable storage device 130 viacellular networks while the device 130 is en route to some location. Theupdated address information may be displayed via the display 214 suchthat the device 130 is rerouted on the fly, for example. In otherembodiments, the wireless communication channel may be used to sendupdated shipping information for display while the device is located atthe customer site. In embodiments, cellular networks may be used totrack the device.

Device 130 is illustrated with radio frequency identification (RFID)280. The RFID may assist with tracking the device, in some instances.For example, devices may be identified during the provisioning processvia a respective RFID or devices may be identified upon receipt at thecustomer or upon return to the service provider by a respective RFID.The RFID may be used to track the shippable storage device as the deviceis routed through a facility, such as through a service providersfulfillment facility (e.g., while routed on a conveyor system).

Device 130 is illustrated with various sensors 222, 224. The device maybe outfitted with any of various sensors including a global positioningsensor (GPS), a temperature sensor, a humidity sensor or anaccelerometer, all as non-limiting examples. Data may be collected fromthe sensors and used in various manners, such as to record theenvironment of the device (e.g., hot, cold, moderate, moist) or recordvarious events associated with the device 130, such as a drop, quickmovement, orientation or location of the device 130. The sensor data maybe stored locally, sent over the network 130 or displayed via display214.

Device 130 may be configured with multiple layers of security. Forexample, data stored on the device may be encrypted one or more times,with one or more keys. The keys may be determined, stored, controlled orheld by various parties and applied at various steps of the illustratedprocesses. For example, some keys used to encrypt the data stored on thedevice may be stored separate from the device, while other keys used toencrypt the data on the device may be stored with the device. Theencryption keys may be applied in multiple layers, in embodiments.

Device 130 may be configured as one or more other types of network-baseddevice or other electronic devices, such as transient local hardware forexample. In an example, non-exhaustive list, device 130 may beconfigured as various combinations of cryptographic hardware andsoftware (e.g., as a type 1 cryptographic device), as a storage gateway,as a web service, a firewall, a high-assurance guard, a server, virtualmachine image, one or more dongles, a data warehousing solution ordatabase service box, or the like.

FIG. 3 is a schematic view of a shippable data storage device 130 with anetwork-updateable electronic ink shipping display, according to someembodiments. FIG. 3 illustrates various components and modules of ashippable storage device 130. The device may be configured with fewer oradditional components or modules. Some component or module may bereplaced by other component or modules. For example, the processor 310and memory 312 may be replaced by firmware, in embodiments. Variouscomponents or modules may perform some or all of the processesillustrated in the FIGs., in embodiments.

In FIG. 3 , device 130 is illustrated with display 214, networkinterface 306 and persistent storage 350. In the illustrated embodiment,display driver 302 provides an interface function between a processor310 and display 214. For example, to instruct the display to display anaddress, processor 310 executes computer instructions from memory 312that send messages to display driver 302 that are interpreted by thedisplay driver and cause the display driver to display the address ondisplay 214.

Network interface 306 acts as an interface between an external network(e.g., a customer network or a service provider network or network 108)and the device. In embodiments, the network interface is configured totransmit instructions to the device or to transmit encrypted data to thepersistent storage 350. Wireless interface 308 may be configured toreceive (e.g., via cellular or Wi-Fi network) instructions from theservice provider. For example, the service provider 120 may send updatedaddress information to the device 130 via a cellular network such thatthe displayed address of the device is updated en route, therebychanging the destination for the device in-flight such that the deviceis shipped to the updated address instead of the prior address.

Input/Output (I/O) interface 304 may be configured to coordinate I/Otraffic between processor 310, memory 312, the display driver, networkinterface 306, wireless interface 308, sensor interface(s) 320 andpersistent storage 350 or peripheral interface. In some embodiments, I/Ointerface 304 may perform any necessary protocol, timing or other datatransformations to convert data signals from one component (e.g., systemmemory 312) into a format suitable for use by another component (e.g.,processor 310). In some embodiments, I/O interface 304 may includesupport for devices attached through various types of peripheral buses,such as a variant of the Peripheral Component Interconnect (PCI) busstandard or the Universal Serial Bus (USB) standard, for example. Insome embodiments, the function of I/O interface 340 may be split intotwo or more separate components, such as a north bridge and a southbridge, for example. Also, in some embodiments, some or all of thefunctionality of I/O interface 304, such as an interface to systemmemory 312, may be incorporated directly into processor 310.

Device 130 is depicted with persistent data storage 350. Persistent datastorage 350 may include any combination of non-volatile storage such ashard drives or flash memory. Persistent storage 350 may be configured(e.g., during a provisioning process) to store large amounts ofencrypted data (e.g., from a large data store such as a customer storagesystem) during shipment from the customer location to a service providerlocation where the data is transferred to a service provider storagesystem.

Device 130 is depicted with power source 330 that may power the variouselectronic components of the device 130 and with sensor(s) 340 andsensor interface(s) 320. As described above, any of various sensor(s)may be incorporated into device 130. Device 130 may also include varioussensor interface(s) 320 that act as an interface between the sensor(s)340 and I/O interface 304. The sensor interfaces may be proprietaryinterfaces, customized for a particular sensor, in embodiments. Thesensor interfaces may perform various functions such as conversions ofdata, analysis of sensor output and output of information based on theanalysis or the like.

Data Transfer Device Lifecycle

FIG. 4 is a flow diagram of a process of using a shippable data storagedevice with network-updateable electronic ink shipping display,according to some embodiments. FIG. 4 illustrates a data transfer devicelifecycle, in embodiments. The illustrated process may be performedwithin the context of a shippable storage device 130, service provider120 and customer enterprise location 110.

At 402, a service provider (e.g., service provider 120) provisions ashippable storage device (e.g., device 130) and sets an electronicdisplay of the device. For example, the service provider may set theelectronic display (e.g., via the device user interface or via anexternal connection through the network interface) to display a customerdestination address. In embodiments, the service provider may also storea return address or the address of another customer facility in memoryof the device such that the display can be updated with the storedaddress at some point.

At 404, the device 130 is shipped as a self-contained shipping containerto a destination that is indicated by the device's electronic display.For example, the service provider may provide the device with theenclosure, the display, the persistent storage and the network interfaceto a common carrier without any additional packaging or labeling. Thecommon carrier may ship the device through the carrier network to thedestination without packaging or labeling in addition to the enclosureand electronic display, in embodiments.

At 406, the device is received at the customer site (e.g., enterpriselocation x 110) the device is installed onto a network at the customersite and data is loaded onto the device 130. At 408, the electronicallydisplayed destination may be updated and the device 130 shipped as aself-contained shipping container to the updated destination indicatedby the device's electronic display. The display may be updated with adestination address or code that was stored in memory of the device 130at provisioning or received over a network (network 108) while en routeor at a customer location. The updated address may be a return addressfor returning the device to the service provider or an address ofanother location for the same or different customer (e.g., securityprovisions may be implemented such that data from multiple customers canbe stored on the device).

At 410, the device is shipped to the next customer site, where thedevice can be installed and more data encrypted and loaded onto thedevice 130 (similar to 406) and the process may continue through 408 and410 one or more times until the device is updated with the serviceprovider address and given to a carrier to ship to the service providernetwork location. At 412, the data from the device 130 is ingested ortransferred into a storage service of the service provider 120. Forexample, the device is received by the service provider 120, connectedto a service provider network, the data from the device unencrypted andthe data stored to a service provider storage service.

At 414, the device is wiped of data (e.g., customer data and securityinformation deleted or overwritten) and readied for reuse. The processmay begin again at 402 and continue.

FIGS. 5-7 illustrated various processes associated with device 130. FIG.5 illustrates a provisioning process that may be performed by theservice provider that associated a particular device 130 with aparticular customer job. FIG. 6 illustrates a customer-side process forconnecting the device to the customer's storage, loading data onto thedevice, and updating the electronic display with the next destination.FIG. 7 illustrated a process of off-loading data from the device thatmay be performed by the service provider when the device 130 is receivedback by the service provider. The illustrated processes depictalternative import/export embodiments where appropriate.

Provisioning

FIG. 5 is a flow diagram of a provisioning process associated with ashippable data storage device with network-updateable electronic inkshipping display, according to some embodiments. One or more portions ofthe illustrated process may be performed by one or more processesexecuting on a provider computer or network, in embodiments. Theillustrated process may be performed on device 130, illustrated in FIGS.1-3 .

At block 502, one or more requests are received for a customer dataimport or export job(s) via a console. The console may be configured toprovide access and management of data transfer projects or jobs througha network-based user interface. The network-based user interface may beprovided by the service provider, in embodiments. The console may beconfigured to receive various project data from the customer and toprovide that data to the service provider. The service provider may usethe data as part of the provisioning process as well as part of anauthentication process on the customer network when the device isconnected to the customer network, in embodiments.

At block 504, the data transfer devices are provisioned and securityinformation is installed on the devices. For example, particular datatransfer devices may be removed from storage, associated with a customerproject or job and loaded with keys, security certificates or the likesuch that the device 130 can be shipped to the customer that made therequest.

In an export embodiment (e.g., when a customer requests to export datafrom a storage service provider system via the data transfer devices),data may be loaded from a storage network of the service provider ontothe data transfer devices.

At block 506, the electronic display 214 of the data transfer device 130may be set with the customer-supplied shipping address (an addressobtained via the console, for example). For example, the serviceprovider may set the display via the network interface of the device. Atblock 508, the data transfer devices 130 are provided to the carrier asself-contained shipping containers. For example, the data transferdevice may be provided to, and shipped by, a common carrier without anyadditional packaging or labeling beyond the enclosure and electronicdisplay device. In some embodiments, the device 130 may be configured toreceive commands from a common carrier or from the service provider thatcause the device to display bar codes or the like that are used by thecommon carrier for routing the device through the carrier network.

FIG. 6 is a flow diagram of a client side process associated with ashippable data storage device with network-updateable electronic inkshipping display at a customer location, according to some embodiments.Various portions of the process may be performed by a server or othercomputer on a customer network (e.g., enterprise location x 110) as partof moving data from the customer network to device 130. In someembodiments, portions of the process may be performed by a downloadedproprietary application executing on the customers hardware. Theproprietary application may be downloaded from the service provider, inembodiments.

At block 602, the data transfer device is received from the carrier. Forexample, device 130 may be received at a customer site (e.g., enterpriselocation x 110) from a common carrier. The data transfer device isconnected to the customer network (block 604). This may includephysically connecting the device 130 to a network of the customer (e.g.,via Ethernet or SATA or the like).

At block 606, the customer server (e.g., via execution of the downloadedapplication) discovers and validates the data transfer device. Forexample, the customer server may validate the data transfer device 130based on one or more security certificates. At some point, thedestination information that is displayed during shipment of the datatransfer device may be updated (607), via network 108, via cellularnetwork, or based on a stored address within the device, for example.

If the job is an export job (e.g., exporting data from the serviceprovider storage network via the data transfer devices), the data may bemoved from the data transfer device to customer-specified storage (block609). If the job is an import job (e.g., importing data from thecustomer to the service provider), the customer server may encrypt thecustomer data and load the encrypted customer data onto the datatransfer device (block 610) and the electronic display may be set forthe next destination (block 612), based on the updated destinationinformation, above, for example.

The data transfer device may be disconnected from the customer network(block 614) and the data transfer device may be provided to a carrier asa self-contained shipping container (block 616), as described herein. Insome embodiments, the device 130 may be sent to another customer formore data to be loaded on the device before being sent back to theservice provider (e.g., provider 120).

FIG. 7 is a flow diagram of a service provider data ingestion processassociated with a shippable data storage device with network-updateableelectronic ink shipping display, according to some embodiments. Inembodiments, an application executing on the service provider 120network performs some portion of all of the process illustrated in FIG.7 , after the device is received back from the customer 110, forexample.

At block 702, the data transfer device is received at the serviceprovider from a carrier (e.g., as a self-contained shipping container130). The data transfer device may be connected to the service providernetwork (block 704) and the customer data from the data transfer deviceread, decrypted and stored to a storage service of the service provider(block 706). The data transfer device may be prepared for re-use, thecustomer data and/or security information wiped from the persistentstorage of device 130, for example.

FIG. 8 illustrates a shippable tote/shipping container a withnetwork-updateable electronic ink shipping display, according to someembodiments. The tote or shipping container 810 illustrated in FIG. 8may comprise more, the same, or fewer components or modules thanillustrated device 130 of FIGS. 2 and 3 . Tote 810 is illustrated withan enclosure 215 that can be opened such that items can be place intothe enclosure of the tote. Some totes may be open without flaps, in someembodiments.

Tote 810 is illustrated with antenna 220, sensor 222, RFID 280, display214, switch 230, and battery 260. The features may perform functionalitysimilar to the functionality describes for the shippable data transferdevice 130 illustrated in FIG. 2 and described, above. In some exampleembodiments, tote 810 may be filled with groceries and shipped to acustomer. Sensor 222 may record the temperature of the environment ofthe tote 810 as it is transported to the customer. In some embodiments,the temperature or a related message or warning may be displayed by thetote 810 on display 214, that the tote remained below some temperatureor the tote was in a warm environment for some period of time, forexample. In another example, shipping container 810 may be configuredwith an accelerometer sensor 222 the records data indicating that theshipping container was dropped and may be further configured to displaya message via display 214 acknowledging the drop or indicating when andwhere the drop happened.

Tote 810 may be configured to carry various different items, such ashigh value items (e.g., wine or diamonds), live items (e.g., livestockor fowl), groceries, or anything else that fits in the container. Thetote may be configured with various other features to make the containersuitable for particular contents such as insulation for carrying frozengroceries, for example.

FIGS. 9A-9D illustrate various types of information displayed via anupdateable electronic display, according to some embodiments. Theillustrated examples are applicable to various device embodimentsincluding but not limited to those depicted in FIGS. 1-3 and describedabove.

FIG. 9A illustrates an updateable device display of a shippable datastorage device with network-updateable electronic ink shipping display.In the illustrated embodiment, the display 214 of device 130 isdisplaying sender (1400 Ave. A, STE C) and recipient address information(BLDG 2, 123 HWY 14), tracking information (e.g., tracking bar code andassociated tracking no. 1ksd949 . . . ), a routing code DL 787 902(e.g., tells how to route a package within a carrier network orfacility), a postal bar code that features the zip code for thepackage's destination (e.g., 1234abcd), and a QR code that may encodevarious information (e.g., postal code, country code, service class (MAetc.), tracking number, Julian date, package quantity and weight,address validation, and ship street, city and state).

In some embodiments, various information may be hidden or obscured ordisplayed in code, instead of directly displayed in the display. Forexample, addresses may be coded so as to obscure the destination frombeing readily recognizable without computer aid such as a scanner. Forexample, FIG. 9B illustrates an updateable device display of a shippabledata storage device with network-updateable electronic ink shippingdisplay where the display 214 of device 130 is only displaying a singleQR code. Any of various information may be encoded in the QR code anddecoded via scanner or image processing device such as addressinformation, or the like. In some embodiments, information may be hiddenor obscured or not displayed according to geographical location. Forexample, the data transfer device may not display the address of theservice provider while at the customer site and may instead displayinstructions to provide the data transfer device to a carrier. Thedevice may transition the display to display the address of the serviceprovider once the device has left the customer premises, or may displaya coded version of the destination address that is only computerreadable, in embodiments.

FIG. 9C illustrates an updateable device display of a shippable datastorage device with network-updateable electronic ink shipping display.In the illustrated embodiment, display 214 of device 130 is displaying awarning message that the destination address intended for display viathe electronic display does not match a security certificate. Variousother messages or information may be displayed, such as sensor data,instructions (e.g., instructions for using the device), other warningsor the like.

FIG. 9D illustrates an updateable device display of a shippable datastorage device with network-updateable electronic ink shipping display.In the illustrated embodiment, the display 131 of device 130 has beeninstructed to display a message associated with various sensors of thedevice 130. The displayed sensor information may include metadataassociated with the sensed data. In the illustrated example, the displayhas been instructed to display the message “Container environmentreached 47 degree Celsius on May 5, 2015 at 9:15 a.m. at location30.282180, −97.824945. Other messages associated with other sensors maybe instructed for display on device 130, in embodiments. For example,the display may be instructed to display instructions for using thedevice, such as instructions from a user manual stored on the device orsent to the device via a network. Other messages may be displayed, suchas messages associated with a lost or stolen device are alsocontemplated.

Any of various computer systems may be configured to implement theprocesses associated (e.g., provisioning or ingestion by the serviceprovider or execution of the downloaded application on a customerserver) with a shippable data storage device with network-updateableelectronic ink shipping display. For example, FIG. 10 is a block diagramillustrating one embodiment of a computer system suitable forimplementing some of the systems and methods described herein. Invarious embodiments, the storage service of the service provider at thestorage service location 120, or customer computers at enterpriselocation 110 (e.g., customer server) may each include a computer system1000 such as that illustrated in FIG. 10 .

In the illustrated embodiment, computer system 1000 includes one or moreprocessors 1010 coupled to a system memory 1020 via an input/output(I/O) interface 1030. Computer system 1000 further includes a networkinterface 1040 coupled to I/O interface 1030. In some embodiments,computer system 1000 may be illustrative of servers implementingenterprise logic or downloadable application, while in other embodimentsservers may include more, fewer, or different elements than computersystem 1000.

In various embodiments, computer system 1000 may be a uniprocessorsystem including one processor 1010, or a multiprocessor systemincluding several processors 1010 (e.g., two, four, eight, or anothersuitable number). Processors 1010 may be any suitable processors capableof executing instructions. For example, in various embodiments,processors 1010 may be embedded processors implementing any of a varietyof instruction set architectures (ISAs), such as the x106, PowerPC,SPARC, or MIPS ISAs, or any other suitable ISA. In multiprocessorsystems, each of processors 1010 may commonly, but not necessarily,implement the same ISA.

System memory 1020 may be configured to store instructions and dataaccessible by processor 1010. In various embodiments, system memory 820may be implemented using any suitable memory technology, such as staticrandom access memory (SRAM), synchronous dynamic RAM (SDRAM),non-volatile/Flash-type memory, or any other type of memory. In theillustrated embodiment, program instructions and data implementingdesired functions, such as those methods and techniques described abovefor the service provider or downloadable proprietary software are shownstored within system memory 1020 as program instructions 1025. In someembodiments, system memory 1020 may include data 1035 which may beconfigured as described herein.

In one embodiment, I/O interface 1030 may be configured to coordinateI/O traffic between processor 1010, system memory 1020 and anyperipheral devices in the system, including through network interface1040 or other peripheral interfaces. In some embodiments, I/O interface1030 may perform any necessary protocol, timing or other datatransformations to convert data signals from one component (e.g., systemmemory 1020) into a format suitable for use by another component (e.g.,processor 1010). In some embodiments, I/O interface 1030 may includesupport for devices attached through various types of peripheral buses,such as a variant of the Peripheral Component Interconnect (PCI) busstandard or the Universal Serial Bus (USB) standard, for example. Insome embodiments, the function of I/O interface 1030 may be split intotwo or more separate components, such as a north bridge and a southbridge, for example. Also, in some embodiments, some or all of thefunctionality of I/O interface 1030, such as an interface to systemmemory 1020, may be incorporated directly into processor 1010.

Network interface 1040 may be configured to allow data to be exchangedbetween computer system 1000 and other devices attached to a network,such as other computer systems, for example. In particular, networkinterface 1040 may be configured to allow communication between computersystem 1000 and/or various I/O devices 1050. I/O devices 1050 mayinclude scanning devices, display devices, input devices and/or othercommunication devices, as described herein. Network interface 1040 maycommonly support one or more wireless networking protocols (e.g.,Wi-Fi/IEEE 802.11, or another wireless networking standard). However, invarious embodiments, network interface 1040 may support communicationvia any suitable wired or wireless general data networks, such as othertypes of Ethernet networks, for example. Additionally, network interface1040 may support communication via telecommunications/telephony networkssuch as analog voice networks or digital fiber communications networks,via storage area networks such as Fibre Channel SANs, or via any othersuitable type of network and/or protocol.

In some embodiments, system memory 1020 may be one embodiment of acomputer-accessible medium configured to store program instructions anddata as described above. However, in other embodiments, programinstructions and/or data may be received, sent or stored upon differenttypes of computer-accessible media. Generally speaking, acomputer-accessible medium may include computer-readable storage mediaor memory media such as magnetic or optical media, e.g., disk orDVD/CD-ROM coupled to computer system 1000 via I/O interface 1030. Acomputer-readable storage medium may also include any volatile ornon-volatile media such as RAM (e.g. SDRAM, DDR SDRAM, RDRAM, SRAM,etc.), ROM, etc., that may be included in some embodiments of computersystem 1000 as system memory 1020 or another type of memory. Further, acomputer-accessible medium may include transmission media or signalssuch as electrical, electromagnetic, or digital signals, conveyed via acommunication medium such as a network and/or a wireless link, such asmay be implemented via network interface 1040.

In some embodiments, I/O devices 1050 may be relatively simple or “thin”client devices. For example, I/O devices 1050 may be configured as dumbterminals with display, data entry and communications capabilities, butotherwise little computational functionality. However, in someembodiments, I/O devices 1050 may be computer systems configuredsimilarly to computer system 1000, including one or more processors 1010and various other devices (though in some embodiments, a computer system1000 implementing an I/O device 1050 may have somewhat differentdevices, or different classes of devices).

In various embodiments, I/O devices 1050 (e.g., scanners or displaydevices and other communication devices) may include, but are notlimited to, one or more of: handheld devices, devices worn by orattached to a person, and devices integrated into or mounted on anymobile or fixed equipment, according to various embodiments. I/O devices1050 may further include, but are not limited to, one or more of:personal computer systems, desktop computers, rack-mounted computers,laptop or notebook computers, workstations, network computers, “dumb”terminals (i.e., computer terminals with little or no integratedprocessing ability), Personal Digital Assistants (PDAs), mobile phones,or other handheld devices, proprietary devices, printers, or any otherdevices suitable to communicate with recommendation engine 195 or device130. In general, an I/O device 1050 (e.g., cursor control device,keyboard, or display(s) may be any device that can communicate withelements of computing system 1000. In one embodiment, at least some ofthe I/O devices 1050 may be configured to scan or otherwise read orreceive codes or identifiers of various objects and to communicate thecodes to recommendation engine 195. Such components may include, but arenot limited to, one or more of items, orders, containers or suitcases.

The various methods as illustrated in the figures and described hereinrepresent illustrative embodiments of methods. The methods may beimplemented manually, in software, in hardware, or in a combinationthereof. The order of any method may be changed, and various elementsmay be added, reordered, combined, omitted, modified, etc. For example,in one embodiment, the methods may be implemented by a computer systemthat includes a processor executing program instructions stored on acomputer-readable storage medium coupled to the processor. The programinstructions may be configured to implement the functionality describedherein (e.g., the functionality of the enterprise logic, packingservice, product database, device and/or other communication devices,etc.).

Various modifications and changes may be made as would be obvious to aperson skilled in the art having the benefit of this disclosure. It isintended to embrace all such modifications and changes and, accordingly,the above description to be regarded in an illustrative rather than arestrictive sense.

Various embodiments may further include receiving, sending or storinginstructions and/or data implemented in accordance with the foregoingdescription upon a computer-accessible medium. Generally speaking, acomputer-accessible medium may include storage media or memory mediasuch as magnetic or optical media, e.g., disk or DVD/CD-ROM, volatile ornon-volatile media such as RAM (e.g. SDRAM, DDR, RDRAM, SRAM, etc.),ROM, etc., as well as transmission media or signals such as electrical,electromagnetic, or digital signals, conveyed via a communication mediumsuch as network and/or a wireless link.

What is claimed is:
 1. A network-attachable data transfer device thattransports a persistent storage medium, the network-attachable datatransfer device comprising: an enclosure configured to ship thenetwork-attachable data transfer device as a self-contained shippingunit; an updateable electronic display coupled to the enclosure andvisible external to the enclosure to provide shipping destinationinformation, wherein the updateable electronic display is updateable tochange the shipping destination information; a persistent storage mediuminside the enclosure, the persistent storage medium configured to:function as a network-attached storage device when attached to anetwork, and store data during shipment; a physical network connectionaccessible through the enclosure and configured to provide access to thepersistent storage medium as the network-attached storage device; and aninternal power source configured to provide power to at least acomponent of the network-attachable data transfer device.
 2. Thenetwork-attachable data transfer device as recited in claim 1, whereinthe updateable electronic display comprises an electronic ink screenconfigured to maintain display of the shipping destination informationduring shipping without power.
 3. The network-attachable data transferdevice as recited in claim 1, wherein the updateable electronic displaycomprises a touch-screen configured to receive touch-based input toconfigure the network-attachable data transfer device for data transferon a network.
 4. The network-attachable data transfer device as recitedin claim 1, wherein the network-attachable data transfer device isruggedized.
 5. The network-attachable data transfer device as recited inclaim 1, wherein the network-attachable data transfer device isruggedized in accordance with one or more standards comprising MTh STD810 (MIL-SPEC) or IPXX (ingress protection) for dust and waterprotection.
 6. The network-attachable data transfer device as recited inclaim 1, wherein the network-attachable data transfer device isprovisioned with a keystore comprising one or more certificates thatauthenticate the network-attachable data transfer device and one or morekeys for encrypting data stored to the persistent storage medium of thenetwork-attachable data transfer device.
 7. The network-attachable datatransfer device as recited in claim 1, wherein the network-attachabledata transfer device is configured to receive and store encrypted data.8. The network-attachable data transfer device as recited in claim 1,wherein the network-attachable data transfer device is configured as atype 1 cryptographic device.
 9. The network-attachable data transferdevice as recited in claim 1, further comprising a temperature sensorconfigured to sense a temperature of an environment of thenetwork-attachable data transfer device, and wherein thenetwork-attachable data transfer device is configured to displayinformation obtained from the temperature sensor on the updateableelectronic display.
 10. The network-attachable data transfer device asrecited in claim 1, wherein the persistent storage medium comprises oneor more hard disk drives.
 11. The network-attachable data transferdevice as recited in claim 1, wherein the persistent storage mediumcomprises one or more solid state storage devices.
 12. Thenetwork-attachable data transfer device as recited in claim 1, whereinthe network-attachable data transfer device is configured to instructdisplay of one or more operational characteristics of the persistentstorage medium via the updateable electronic display.
 13. Thenetwork-attachable data transfer device as recited in claim 1, furthercomprising: a power connector configured to provide power from anexternal power source to one or more components of thenetwork-attachable data transfer device.
 14. The network-attachable datatransfer device as recited in claim 1, further comprising a networkinterface configured to act as an interface between thenetwork-attachable data transfer device and one or more networks. 15.The network-attachable data transfer device as recited in claim 14,wherein the network interface is configured to act as an interfacebetween the network-attachable data transfer device and one or morenetworks using at least one of iSCSI protocol or Ethernet protocol. 16.The network-attachable data transfer device as recited in claim 1,further comprising: a switch for turning power on and off or a switch toactivate the updateable electronic display.
 17. The network-attachabledata transfer device as recited in claim 1, configured to: receive acommon carrier code from a common carrier for the shipment that isparticular to the common carrier; and display the common carrier codevia the updateable electronic display of the network-attachable datatransfer device.
 18. The network-attachable data transfer device asrecited in claim 1, further comprising an antenna, wherein thenetwork-attachable data transfer device is configured to: receive, viathe antenna, updated shipping address information for thenetwork-attachable data transfer device; and display the updatedshipping address information via the updateable electronic display ofthe enclosure of the network-attachable data transfer device.
 19. Thenetwork-attachable data transfer device as recited in claim 18, thenetwork-attachable data transfer device configured to: authenticate theupdated shipping information against a security certificate providedwith the updated shipping information, and instruct, when the updatedshipping information fails authentication against the securitycertificate, the updateable electronic display to display a warningmessage.
 20. The network-attachable data transfer device as recited inclaim 1, configured to display, via the updateable electronic display ofthe network-attachable data transfer device, instructions for connectingthe network-attachable data transfer device to the network.